package com.yunyao.common.dto.excel;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Data
public class SettlementExcelDto implements Serializable {
    /**
     * 主键ID
     */
    @ExcelIgnore
    private String id;


    /**
     * 销售合同编号
     */
    @Excel(name = "合同编号", orderNum = "1")
    private String contractNo;

    /**
     * 合同名称
     */
    @Excel(name = "合同名称", orderNum = "2")
    private String contractName;


    /**
     * 项目名称
     */
    @Excel(name = "项目名称", orderNum = "3")
    private String projectName;

    /**
     * 对账含税总金额
     */
    @Excel(name = "确认含税价", orderNum = "5")
    private BigDecimal reconciliationPrice;
    /**
     * 对账单数量
     */
    @Excel(name = "供货清单", orderNum = "7")
    private Integer settlementNum;


    /**
     * 供应商名称
     */
    @Excel(name = "供应商名称", orderNum = "4")
    private String supplierName;

    /**
     * 对账周期开始时间
     */
    @ExcelIgnore
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date reconciliationStartDate;

    /**
     * 对账周期结束时间
     */
    @ExcelIgnore
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date reconciliationEndDate;

    /**
     * 结算时间
     */
    @Excel(name = "结算时间", orderNum = "9")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date settlementDate;
    /**
     * 业务状态 1:正常
     */
    @Excel(name = "状态", orderNum = "11")
    private Integer status;


    /**
     * 价格类型
     */
    @Excel(name = "价格类型", orderNum = "6")
    private String priceTypeDesc;
    /**
     * 付款周期 0 到货结算 1款清发货 2 月度结算
     */
    @Excel(name = "付款周期", orderNum = "10")
    private String paymentCycle;
}
